Linq how to filter an object list based on overlap of nested list property and external list